Formal verification of a concurrent bounded queue in a weak memory model
نویسندگان
چکیده
We use Cosmo, a modern concurrent separation logic, to formally specify and verify an implementation of multiple-producer multiple-consumer queue in the setting Multicore OCaml weak memory model. view this result as demonstration experimental verification manner which Cosmo allows modular formal reasoning about advanced data structures. In particular, we show how joint logically atomic triples Cosmo's views makes it possible describe precisely specification interaction between library
منابع مشابه
Verification of Concurrent Programs on Weak Memory Models
Modern multi-core processors equipped with weak memory models seemingly reorder instructions (with respect to program order) due to built-in optimizations. For concurrent programs, weak memory models thereby produce interleaved executions which are impossible on sequentially consistent (SC) memory. Verification of concurrent programs consequently needs to take the memory model of the executing ...
متن کاملContext-Bounded Analysis of Concurrent Queue Systems
We show that the bounded context-switching reachability problem for concurrent finite systems communicating using unbounded FIFO queues is decidable, where in each context a process reads from only one queue (but is allowed to write onto all other queues). Our result also holds when individual processes are finite-state recursive programs provided a process dequeues messages only when its local...
متن کاملA Memory Based Model of Bounded Rationality a Memory Based Model of Bounded Rationality a Memory Based Model of Bounded Rationality a Memory Based Model of Bounded Rationality
How do memory limitations affect economic behavior? I develop a model of memory grounded in psychology and biology research to investigate this question. Using this model, I study the case where people apply Bayes rule to the history they recall as if it were the true history. The resulting beliefs exhibit over-reaction on average. They also exhibit under-reaction with the model providing enoug...
متن کاملA formal hierarchy of weak memory models
We present in this paper a formal generic framework, implemented in the Coq proof assistant, for defining and reasoning about weak memory models. We first present the three axioms of our framework, with several examples as illustration and justification. Then we show how to implement several existing weak memory models in our framework, and prove formally that our implementation is equivalent t...
متن کاملFormal Verification of a Practical Lock-Free Queue Algorithm
We describe a semi-automated verification of a slightly optimised version of Michael and Scott’s lock-free FIFO queue implementation. We verify the algorithm with a simulation proof consisting of two stages: a forward simulation from an automaton modelling the algorithm to an intermediate automaton, and a backward simulation from the intermediate automaton to an automaton that models the behavi...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
ژورنال
عنوان ژورنال: Proceedings of the ACM on programming languages
سال: 2021
ISSN: ['2475-1421']
DOI: https://doi.org/10.1145/3473571